layui.use(['table', 'form','laydate'], function () {
    var table = layui.table,
        form = layui.form,
        $ = layui.jquery,
        laydate = layui.laydate;
    //执行一个 table 实例
    var tableIns = table.render({
        elem: '#videoInfo',
        height: 460,
        url: '../videos/' //数据接口
        ,
        title: '视频列表',
        page: true //开启分页--会在地址后面自动添加?page=1&limit=10
        ,
        toolbar: '#headBar' //开启工具栏，此处显示默认图标，可以自定义模板，详见文档
        ,
        cols: [
            [ //表头
                {
                    type: 'checkbox',
                    fixed: 'left'
                }, {
                //field指的是json数据格式中的key
                // field的值必须和实体类的属性一致
                field: 'id',
                title: 'ID',
                sort: true
            }, {
                field: 'nickname',
                title: '上传者',
            }, {
                field: 'video_desc',
                title: '视频描述',
                edit: 'text'
            }, {
                field: 'video_path',
                title: '视频',
            }, {
                field: 'video_seconds',
                title: '时长',
            }, {
                field: 'create_time',
                title: '上传时间',
                sort: true,

            }, {
                field: 'like_counts',
                title: '点赞量',
                edit: 'text'
            }, {
                field: 'status',
                title: '状态',
                templet: function (res) {
                    var id = res.id;
                    if (res.status == 1) {
                        return '<input type="checkbox" name="lock" value="' + id + '" title="上线" lay-filter="lockDemo" checked >'
                    } else {
                        return '<input type="checkbox" name="lock" value="' + id + '" title="上线" lay-filter="lockDemo" >'
                    }
                }
            }, {
                fixed: 'right',
                width: 165,
                align: 'center',
                toolbar: '#barDemo'
            }
            ]
        ]
    });
    //监听锁定按钮
    form.on('checkbox(lockDemo)', function (obj) {
        //去访问后台进行编辑操作
        console.log(obj.elem.checked); //是否被选中，true或者false
        console.log(obj.value); //复选框value值，也可以通过data.elem.value得到
        //val 指的是status的值 0 或者 1
        var val = obj.elem.checked == true ? 1 : 0;
        var id = obj.value
        var status = "status"
        $.ajax({
            type: "PATCH",
            url: '../videos/',
            dataType: 'json',
            contentType: "application/json",
            data: JSON.stringify({
                "val": val,
                "id": id,
                "field": status
            }),
            success: function (res) {
                layer.msg(res.msg)
            }
        })
    });
    //在线编辑
    //监听单元格编辑
    table.on('edit(test)', function (obj) {

        var value = obj.value //得到修改后的值
            , data = obj.data //得到所在行所有键值
            , field = obj.field; //得到字段
        console.log("1")
        $.ajax({
            type: "PATCH",
            url: "../videos/",
            dataType: 'json',
            contentType: "application/json",
            data: JSON.stringify({
                "val": value,
                "field": field,
                "id": data.id
            }),
            success: function (res) {
                layer.msg(res.msg)
            }

        })

    });

    //监听头工具栏事件
    table.on('toolbar(test)', function (obj) {
        var checkStatus = table.checkStatus(obj.config.id)
            , data = checkStatus.data; //获取选中的数据
        switch (obj.event) {
            case 'add':
                layer.open({
                    type: 2,
                    title: "上传视频",
                    area: ["500px", "500px"],
                    content: "../home/upvideo"
                })
                break;
            case 'update':
                if (data.length === 0) {
                    layer.msg('请选择一行');
                } else if (data.length > 1) {
                    layer.msg('只能同时编辑一个');
                } else {
                    layer.alert('编辑 [id]：' + checkStatus.data[0].id);
                }
                break;
            case 'delete':
                if (data.length === 0) {
                    layer.msg('请选择一行');
                } else {
                    layer.msg('删除');
                }
                break;
        }
        ;
    });
    //id和desc的模糊查询
    $("#search").on('click', function () {
        //执行重载
        table.reload('videoInfo', {
            page: {
                curr: 1 //重新从第 1 页开始
            }
            ,where: {
                "videoDesc":$("#vdesc").val(),
                "videoId":$("#vid").val()
            }
            ,url:"../videos/like"
        });
    })

    laydate.render({
        elem: '#test1' //指定元素
        ,range: "~"
        ,type: 'datetime'
    });

    //id和desc的模糊查询
    $("#timesearch").on('click', function () {
        //执行重载
        table.reload('videoInfo', {
            page: {
                curr: 1 //重新从第 1 页开始
            }
            ,where: {
                "time":$("#test1").val()
            }
            ,url:"../videos/time"
        });
    })

    //级联查询
    $.ajax({
        type:"get",
        url:"../videos/like",
        dataType:"json",
        data:{},
        success:function(res){
            var a=["1","2","3","4","5"]
            //index表示素组索引，val表示当前索引对应的值
            $.each(a,function(index,val){
                console.log(val)
                $("#j1").append('<option value="'+val+'">'+ val +'</option>')
            })
            form.render();
        }
    })

    form.on('select(n1)', function(data){
        console.log(data.value); //得到被选中的值
        $.ajax({
            type:"get",
            url:"../videos/like",
            dataType:"json",
            data:{
                "value":data.value
            },
            success:function(res){
                var a=["6","7","8","9","10"]
                //index表示素组索引，val表示当前索引对应的值
                $("#j2").empty()
                $.each(a,function(index,val){
                    console.log(val)
                    $("#j2").append('<option value="'+val+'">'+ val +'</option>')
                })
                form.render();
            }
        })


    });



})